$(document).ready(function() {
	var categorieslength = $('ul.categories-ul').children('li.cat-item').length;
	var currentcatindex = -1;
	
	$('ul.categories-ul > li').addClass('abs');
	$('ul.categories-ul').css('height', (categorieslength * 30) + 'px');
	$('ul.categories-ul > li.cat-item').each(function(index) {
		if($(this).hasClass('current-cat-parent') || $(this).hasClass('current-cat-parent')) {
			$(this).removeClass('current-cat');
			$(this).addClass('current-cat-parent');
			currentcatindex = index;
			$('ul.categories-ul').css('height', (categorieslength * 30 + 155) + 'px');
		}
		$(this).css('top', index * 30);
		$(this).hover(function() {
			$(this).addClass('red-cat');
			goto($(this).parent().children(), index);
		}, function() {
			$(this).removeClass('red-cat');
		});
	});
	
	$('ul.categories-ul').hover(function() {
		$(this).children().eq(currentcatindex).removeClass('current-cat-parent');
		$(this).css('height', (categorieslength * 30 + 155) + 'px');
	}, function() {
		goto($(this).children(), categorieslength);
		$(this).css('height', (categorieslength * 30) + 'px');
	});
	
	function goto(obj, index) {
		for (i = 0; i <= index; i++) {
			obj.eq(i).stop();
			obj.eq(i).animate({top: i * 30}, 200);
		}
		for (i = index + 1; i <= categorieslength; i++) {
			obj.eq(i).stop();
			obj.eq(i).animate({top: i * 30 + 155}, 200);
		}
	}
});